library(tuneR) fs=44100 dt=1/fs T16 = 0.25 t16 = seq(0,T16,by=dt) k=length(t16) t4=seq(0,4*T16,length.out = 4*k) t8=seq(0,2*T16,length.out =2*k) i=length(t4);j=length(t8) mod4=sin(pi*t4/tail(t4,1)) mod8 = sin(pi*t8/tail(t8,1)) mod16 = sin(pi*t16/tail(t16)) f0 = 2*146.8 ScaleTable=c(2/3,3/4,5/6,15/16,1,9/8,5/4,4/3, 3/2,5/3,9/5,15/8,2,9/4,5/2,8/3,3, 10/3,15/4,4,1/2,9/16,5/8) do0f = mod4*cos(2*pi*ScaleTable[21]*f0*t4); re0f = mod4*cos(2*pi*ScaleTable[22]*f0*t4); mi0f = mod4*cos(2*pi*ScaleTable[23]*f0*t4); fa0f = mod4*cos(2*pi*ScaleTable[1]*f0*t4); so0f = mod4*cos(2*pi*ScaleTable[2]*f0*t4); la0f = mod4*cos(2*pi*ScaleTable[3]*f0*t4); ti0f = mod4*cos(2*pi*ScaleTable[4]*f0*t4); do1f = mod4*cos(2*pi*ScaleTable[5]*f0*t4); re1f = mod4*cos(2*pi*ScaleTable[6]*f0*t4); mi1f = mod4*cos(2*pi*ScaleTable[7]*f0*t4); fa1f = mod4*cos(2*pi*ScaleTable[8]*f0*t4); so1f = mod4*cos(2*pi*ScaleTable[9]*f0*t4); la1f = mod4*cos(2*pi*ScaleTable[10]*f0*t4); tb1f = mod4*cos(2*pi*ScaleTable[11]*f0*t4); ti1f = mod4*cos(2*pi*ScaleTable[12]*f0*t4); do2f = mod4*cos(2*pi*ScaleTable[13]*f0*t4); re2f = mod4*cos(2*pi*ScaleTable[14]*f0*t4); mi2f = mod4*cos(2*pi*ScaleTable[15]*f0*t4); fa2f = mod4*cos(2*pi*ScaleTable[16]*f0*t4); so2f = mod4*cos(2*pi*ScaleTable[17]*f0*t4); la2f = mod4*cos(2*pi*ScaleTable[18]*f0*t4); ti2f = mod4*cos(2*pi*ScaleTable[19]*f0*t4); do3f = mod4*cos(2*pi*ScaleTable[20]*f0*t4); blkf=rep(0,i) do0e = mod8*cos(2*pi*ScaleTable[21]*f0*t8); re0e = mod8*cos(2*pi*ScaleTable[22]*f0*t8); mi0e = mod8*cos(2*pi*ScaleTable[23]*f0*t8); fa0e = mod8*cos(2*pi*ScaleTable[1]*f0*t8); so0e = mod8*cos(2*pi*ScaleTable[2]*f0*t8); la0e = mod8*cos(2*pi*ScaleTable[3]*f0*t8); ti0e = mod8*cos(2*pi*ScaleTable[4]*f0*t8); do1e = mod8*cos(2*pi*ScaleTable[5]*f0*t8); re1e = mod8*cos(2*pi*ScaleTable[6]*f0*t8); mi1e = mod8*cos(2*pi*ScaleTable[7]*f0*t8); fa1e = mod8*cos(2*pi*ScaleTable[8]*f0*t8); so1e = mod8*cos(2*pi*ScaleTable[9]*f0*t8); la1e = mod8*cos(2*pi*ScaleTable[10]*f0*t8); tb1e = mod8*cos(2*pi*ScaleTable[11]*f0*t8); ti1e = mod8*cos(2*pi*ScaleTable[12]*f0*t8); do2e = mod8*cos(2*pi*ScaleTable[13]*f0*t8); re2e = mod8*cos(2*pi*ScaleTable[14]*f0*t8); mi2e = mod8*cos(2*pi*ScaleTable[15]*f0*t8); fa2e = mod8*cos(2*pi*ScaleTable[16]*f0*t8); so2e = mod8*cos(2*pi*ScaleTable[17]*f0*t8); la2e = mod8*cos(2*pi*ScaleTable[18]*f0*t8); ti2e = mod8*cos(2*pi*ScaleTable[19]*f0*t8); do3e = mod8*cos(2*pi*ScaleTable[20]*f0*t8); blke = rep(0,j) do0s = mod16*cos(2*pi*ScaleTable[21]*f0*t16); re0s = mod16*cos(2*pi*ScaleTable[22]*f0*t16); mi0s = mod16*cos(2*pi*ScaleTable[23]*f0*t16); fa0s = mod16*cos(2*pi*ScaleTable[1]*f0*t16); so0s = mod16*cos(2*pi*ScaleTable[2]*f0*t16); la0s = mod16*cos(2*pi*ScaleTable[3]*f0*t16); ti0s = mod16*cos(2*pi*ScaleTable[4]*f0*t16); do1s = mod16*cos(2*pi*ScaleTable[5]*f0*t16); re1s = mod16*cos(2*pi*ScaleTable[6]*f0*t16); mi1s = mod16*cos(2*pi*ScaleTable[7]*f0*t16); fa1s = mod16*cos(2*pi*ScaleTable[8]*f0*t16); so1s = mod16*cos(2*pi*ScaleTable[9]*f0*t16); la1s = mod16*cos(2*pi*ScaleTable[10]*f0*t16); tb1s = mod16*cos(2*pi*ScaleTable[11]*f0*t16); ti1s = mod16*cos(2*pi*ScaleTable[12]*f0*t16); do2s = mod16*cos(2*pi*ScaleTable[13]*f0*t16); re2s = mod16*cos(2*pi*ScaleTable[14]*f0*t16); mi2s = mod16*cos(2*pi*ScaleTable[15]*f0*t16); fa2s = mod16*cos(2*pi*ScaleTable[16]*f0*t16); so2s = mod16*cos(2*pi*ScaleTable[17]*f0*t16); la2s = mod16*cos(2*pi*ScaleTable[18]*f0*t16); ti2s = mod16*cos(2*pi*ScaleTable[19]*f0*t16); do3s = mod16*cos(2*pi*ScaleTable[20]*f0*t16); blks=rep(0,k) blkblock=c(blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf,blkf); cello = c(do1f ,do1f ,so0f, so0f , la0f ,la0f, mi0f, mi0f ,fa0f, fa0f, do0f, do0f , fa0f, fa0f ,so0f ,so0f); violin=c(mi2f,mi2f,re2f,re2f,do2f,do2f,ti1f,ti1f, la1f,la1f,so1f,so1f,la1f,la1f,ti1f,ti1f, do2f,do2f,ti1f,ti1f,la1f,la1f,so1f,so1f, fa1f,fa1f,mi1f,mi1f,fa1f,fa1f,re1f,re1f, do1f,mi1f,so1f,fa1f,mi1f,do1f,mi1f,re1f, do1f,la0f,do1f,so1f,fa1f,la1f,so1f,fa1f, mi1f,do1f,re1f,ti1f,do2f,mi2f,so2f,so1f, la1f,fa1f,so1f,mi1f,do1f,do2f,blkf,blke,ti1e, do2e,ti1e,do2e,do1e,ti0e,so1e,re1e,mi1e, do1e,do2e,ti1e,la1e,ti1e,mi2e,so2e,la2e, fa2e,mi2e,re2e,fa2e,mi2e,re2e,do2e,ti1e, la1e,so1e,fa1e,mi1e,re1e,fa1e,mi1e,re1e, do1e,re1e,mi1e,fa1e,so1e,re1e,so1e,fa1e, mi1e,la1e,so1e,fa1e,so1e,fa1e,mi1e,re1e, do1e,la0e,la1e,ti1e,do2e,ti1e,la1e,so1e, fa1e,mi1e,re1e,la1e,so1e,la1e,so1e,fa1e, mi1f,mi2e,blke,re2f,re2f,blkf,do1f,mi2f,mi2f, la2f,la2f,so2f,so2f,la2f,la2f,ti2f,ti2f, do3e,blke,do2e,blke,ti1f,ti1f,blkf,la1f,do2f,do2f, do2f,do2f,do2f,do2f,do2f,fa2f,re2f,so2f, so2e,mi2s,fa2s,so2e,mi2s,fa2s,so2s,so1s,la1s,ti1s, do2s,re2s,mi2s,fa2s,mi2e,do2s,re2s, mi2e,mi1s,fa1s,so1s,la1s,so1s,fa1s,so1s,mi1s,fa1s,so1s, fa1e,la1s,so1s,fa1e,mi1s,re1s,mi1s,re1s,do1s,re1s,mi1s,fa1s,so1s,la1s, fa2e,la1s,so1s,la1e,ti1s,do2s,so1s,la1s,ti1s,do2s,re2s,mi2s,fa2s,so2s, mi2e,do2s,re2s,mi2e,re2s,do2s,re2s,ti1s,do2s,re2s,mi2s,re2s,do2s,ti1s, do2e,la1s,ti1s,do2e,do1s,re1s,mi1s,fa1s,mi1s,re1s,mi1s,do2s,ti1s,do2s, la1e,do2s,ti1s,la1e,so1s,fa1s,so1s,fa1s,mi1s,fa1s,so1s,la1s,ti1s,do2s, la2e,do2s,ti1s,do2e,ti1s,la1s,ti1s,do2s,re2s,do2s,ti1s,do1s,la1s,ti1s, do2e,blke,blkf,ti1e,blke,blkf,la1e,blke,blkf,do2e,blke,blkf, do1e,blke,blkf,do1e,blke,blkf,do1e,blke,blkf,do1e,blke,blkf, blkf,so1e,blke,blkf,so1e,blke,blkf,mi1e,blke,blkf,so1e,blke, blkf,fa1e,blke,blkf,mi1e,blke,blkf,fa1e,blke,blkf,re2e,blke, mi2e,mi1e,fa1e,mi1e,re1e,re2e,mi2e,re2e,do2e,mi1e,do1e,do2e,ti1e,so0e,fa0e,so0e, la0e,la1e,so1e,la1e,so1e,so0e,fa0e,so0e,do1e,la1e,so1e,la1e,ti1e,ti0e,la0e,ti0e, do1e,do2e,re2e,do2e,ti1e,ti0e,do1e,ti0e,la0e,la1e,so1e,la1e,ti1e,ti0e,mi1e,re1e, do1e,do2e,re2e,fa2e,mi2e,mi1e,so1e,mi2e,do2e,fa2e,mi2e,fa2e,re2e,so1e,fa1e,so1e, mi1e,so1e,so1e,so1e,so1e,so1e,so1e,so1e,mi1e,mi1e,mi1e,mi1e,mi1e,mi1e,so1e,so1e, fa1e,fa1e,fa1e,do2e,do2e,do2e,do2e,do2e,do2e,do2e,la1e,la1e,so1e,so1e,re2e,ti1e, so1e,mi2e,mi2e,mi2e,re2e,re2e,re2e,re2e,do2e,do2e,do2e,do2e,so2e,so2e,so2e,so2e, la2e,la2e,la2e,la2e,so2e,so2e,so2e,so2e,la2e,la2e,la2e,la2e,ti2e,ti1e,ti1e,ti1e, do2e,do1s,re1s,mi1e,do1e,ti0e,ti1s,do2s,re2e,ti1e,la1e,la0s,ti0s,do1e,la0e,ti0e,so1s,fa1s,mi1e,re1e, do1e,mi1s,re1s,do1e,fa1e,mi1e,do1s,re1s,mi1e,so1e,fa1e,la1s,so1s,fa1e,mi1e,re1e,so1s,fa1s,mi1e,re1e, mi1e,do2s,ti1s,do2e,mi1e,so1e,so1s,la1s,ti1e,so1e,mi1e,do2s,re2s,mi2e,do2e,mi2e,mi2s,re2s,do2e,ti1e, la1e,la1s,so1s,la1e,ti1e,do2e,mi2s,re2s,do2e,mi2e,fa2e,do2s,ti1s,la1e,la1e,so1e,re1e,so1e,so1e, so1f,so1f,so1f,so1f,do1f,do1f,do1f,so1f, fa1f,fa1f,so1f,so1f,fa1f,do1f,do1f,do1e,ti0e, do1f,do2f,ti1f,ti1f,la1f,la1f,so1f,so1f, do1f,do1e,re1e,mi1f,mi1f,do2f,do2f,ti1f,ti1f,do2f); c1 = c(cello ,cello ,cello ,cello ,cello, cello, cello ,cello, cello ,cello, cello, cello ,cello, cello ,cello, cello, cello, cello ,cello, cello, cello, cello ,cello ,blkf); v1 = c(blkblock, violin, blkblock ,blkblock); v2 = c(blkblock ,blkblock ,violin ,blkblock); v3 = c(blkblock,blkblock, blkblock, violin); s = c1+v1+v2+v3; s = s/max(s); model=Wave(left = s,right = s,samp.rate=fs*1.5,bit=32,pcm=F) play(model) model=Wave(left = s,samp.rate=fs,bit=32,pcm=F) m1=periodogram(model,width = 4096) f=FF(m1) melodyplot(m1, noteFromFF(f)) part0 = c(mi1f ,la0e, la0e, do1f ,mi1f , re1e ,re1s ,mi1s ,re1e ,do1e ,re1e ,do1e ,la0f , mi1f, la0e, la0e ,do1f, mi1f , so1e, re1s ,mi1s ,re1e,do1e ,re1e ,do1e ,ti0e ,so0e , mi1f ,la0e, la0e ,do1f ,mi1f , re1e ,re1s ,mi1s ,re1e ,do1e ,re1e ,do1e, la0e ,so0e , mi1f ,la0e ,la0e, do1f ,mi1f , so1e ,mi1e ,blkf ,blkf, blkf ); part1 = c(la0f, la0e, so0e, la0f, la0e, do1e , do1f, re1e, do1e, la0f ,la0f , do1f ,do1e, so0e, do1e ,re1e, mi1e, so1e , so1e ,mi1e, re1f, mi1f ,mi1f , la1e ,la1e, la1e, so1e, mi1e ,mi1f ,do1e , la0e, la0e ,la0e, mi1e, re1s ,mi1s ,re1e ,re1f , mi1e, mi1e, so1e ,mi1e ,re1e, mi1e ,re1e ,do1e , la0f ,so0f, la0f ,la0f ); part2 = c(mi1e ,mi1e, so1e ,mi1e, mi1e, so1e ,so1e ,la1e , do2e ,la1e ,so1f, la1s, do2s ,la1e ,la1f , la0f, la0e, so0e ,la0f, do1f , re1e ,mi1s, re1s ,do1e, re1e ,mi1f, mi1f , la0e ,la1e, la1e ,so1e, re1e, mi1s, re1s ,do1e ,re1e , mi1f ,mi1f, blke, blke, blkf , do1e ,la0e, la0e ,do1e, re1f ,so0e ,so0e , mi1e, so1e, mi1e ,re1e, do1f ,do1f , la0e ,do1e, re1e, mi1e, re1e ,do1e, so0e ,mi0e , la0f ,la0f, blke, blke, blkf ); part3 = c(la0f, la0e ,so0e, la0f ,do1f , re1e ,mi1s ,re1s ,do1e ,re1e ,mi1f ,mi1f , la0e ,la1e ,la1e ,so1e ,re1e ,mi1s ,re1s ,do1e ,re1e , mi1f ,mi1f ,blke ,blke ,blkf , do1e ,la0e ,la0e ,do1e ,re1f ,so0e ,so0e , mi1e ,so1e ,mi1e ,re1e ,do1f ,do1e ,do1e , la0e ,do1e ,re1e ,mi1e ,so1e ,mi1e ,mi1e ,so1e , la1f ,la1f ,la1f ,la1f ); part4 = c(la1e,la1s,la1s,la1e,la1e,la1e,la1s,so1s,mi1e,re1e, re1e,re1s,re1s,mi1e,mi1s,so1s,mi1e,mi1s,re1s,do1e,do1s,la0s, la0f,la0e,so0e,la0f,la0e,do1e, re1e,mi1s,re1s,do1e,re1e,mi1f,mi1f, la1e,so1e,mi1e,re1e,so1e,mi1e,re1e,do1e, do1f,do1f,la0s,do1s,re1s,mi1s,re1s,do1s,la0s,do1s ); part5 = c(do2e,do2s,do2s,la1e,la1s,la1s,so1e,so1s,so1s,mi1e,mi1s,mi1s, re1e,mi1s,re1s,do1e,la0s,so0s,la0s,so0s,do1s,re1s,mi1s,so1s,la1s,re2s, do2f,do2f,blks,blks,blks,blks,do1e,re1e, mi1f,mi1f,mi1f,so1e,mi1e, la1f,la1f,la1e,do1e,so1e,mi1e, re1f,re1e,re1s,re1s,re1e,re1e,do1e,re1e, mi1f,mi1e,mi1s,mi1s,mi1e,re1s,do1s,ti0e,do1s,re1s, mi1f,mi1f,mi1f,so1e,mi1e, do2f,la1f,la1f,la1e,do1e, re1f,so1f,so1f,la1f, ti1f,ti1f,ti1f,ti1f ); part6 = c(blkf,blkf,mi1e,so1e,mi1e,so1e, mi1f,la0e,la0s,la0s,do1f,la0e,mi1s,la0s, do1e,do1s,do1s,re1e,do1s,re1s,mi1f,mi1f, mi1f,la0e,la0s,la0s,so1f,re1e,re1s,re1s, mi1f,mi1f,mi1s,re1s,do1s,la0s,mi0s,re0s,mi0s,so0s, do1f,la0e,la0s,la0s,re1f,so0e,so0s,so0s, mi0f,so0e,so0s,so0s,do1f,do1f, la0f,do1e,do1s,la0s,mi1e,mi1s,mi1s,re1e,re1s,mi1s ); s=c(part0,part1,part1,part2,part3,part4,part0,part1,part1,part2,part3,part5,part3,part6,part3); model=Wave(left = s,samp.rate=fs*1.8,bit=32,pcm=F) play(model)
|